package Visitables;

import Composite.RacineDossier;
import Composite.Lecteur;
import Composite.Photo;
import Composite.Dossier;
import Composite.Element;
import fichiers.*;
import java.io.File;


public class Visiteur_MiseAJourAjouterDossierSeulement implements Visiteur {
    
    
    public Visiteur_MiseAJourAjouterDossierSeulement() {
        
        
    }
    
    public void visiteDossier(Dossier d) {
        
        File listeFichier[] = d.getFichierCourant().listFiles();
        if (listeFichier != null) {
            for (int i = 0; i < listeFichier.length; i++) {
                
                boolean estUnDossier = listeFichier[i].isDirectory();
                
                if (estUnDossier && d.contientFichier(listeFichier[i]) == false) {
                    
                    Element t = new Dossier(d, listeFichier[i], listeFichier[i].getName());
                    d.addChild(t, d.getIndex(t));
                    
                }
            }
            
        }  

    }
    
    public void visitePhoto(Photo p) {
    }
    
    public void visiteRacineDossier(RacineDossier r) {
        
        File listeFichier[]=File.listRoots();
        for(int i=0;i<listeFichier.length;i++){
            if(listeFichier[i].listFiles()!=null && r.contientFichier(listeFichier[i])==false){
                Element t=new Lecteur(r,listeFichier[i],listeFichier[i].toString());
                r.addChild(t);
            }
        }

    }
    
}
